<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="../../template.xhtml">
        <ui:define name="title">
            <h:outputText value="#{myBundle.AppName}"></h:outputText>
        </ui:define>
        <ui:define name="body" >
            
        <h:form id="fanelgc">                
            <p:panelGrid style="margin:0 auto;">                    
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Nombres:*"/></p:column>
                    <p:column>
                        <p:inputText id="rnombre" value="#{candidatoregistroMB.persona.nombres}" required="true" requiredMessage="Nombres Obligatorios" validatorMessage="Solo Letra">
                            <p:ajax event="blur" update="mrnombre,rnombre"/>
                            <f:validateRegex pattern="[a-zA-Z]+"/>
                        </p:inputText>                                                    
                    </p:column>
                    <p:column styleClass="tdlavel"><h:outputText value="Apellidos:*" /> </p:column>
                    <p:column>
                        <p:inputText id="rapellidos" value="#{candidatoregistroMB.persona.apellidos}" required="true" requiredMessage="Apellidos Obligatorios" validatorMessage="Solo Letra">
                            <p:ajax event="blur" update="mrapellidos,rapellidos"/>
                            <f:validateRegex pattern="[a-zA-Z]+"/>
                        </p:inputText>                         
                    </p:column>                    
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mrnombre" for="rnombre"/></p:column>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mrapellidos" for="rapellidos"/></p:column>                    
                </p:row>  
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Fecha de nacimiento:*"/></p:column>
                    <p:column>
                        <p:calendar id="rfechan" value="#{candidatoregistroMB.persona.natalicio}" 
                                    navigator="true" required="true" requiredMessage="Natalicio Obligatorio" 
                                    pattern="dd/MM/yyyy" locale="es" readonly="#{facesContext.renderResponse}">                            
                            <p:ajax event="dateSelect" update="mrfechan"/>
                        </p:calendar>                        
                    </p:column>
                    <p:column styleClass="tdlavel"><h:outputText value="Genero:*"/></p:column>
                    <p:column>
                        <p:selectOneMenu value="#{candidatoregistroMB.persona.genero}" id="rgenero" 
                                         required="true" requiredMessage="Genero Obligatorio">
                                <f:selectItem itemLabel="Seleccione Genero" itemValue="#{null}"/>
                                <f:selectItem itemValue="M" itemLabel="Masculino"/>
                                <f:selectItem itemValue="F" itemLabel="Femenino"/>
                                <p:ajax update="mrgenero, rgenero"/>
                        </p:selectOneMenu>                        
                    </p:column>                    
                </p:row>  
                <p:row>
                    <p:column></p:column>
                    <p:column  styleClass="tdmensaje"><h:message id="mrfechan" for="rfechan"/></p:column>
                    <p:column></p:column>
                    <p:column  styleClass="tdmensaje"><h:message id="mrgenero" for="rgenero"/></p:column>                    
                </p:row> 
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Estado Civil*"/></p:column>
                    <p:column>
                        <p:selectOneMenu value="#{candidatoregistroMB.persona.idEstadoCiv}" id="restc" 
                                         required="true" requiredMessage="Estado Civil Obligatorio" 
                                         converter="estadoCivilConverter">
                            <f:selectItem itemLabel="Elija un Estado Civil" itemValue="#{null}"/>
                            <f:selectItems value="#{estadoCivilController.lestadoCivil}"
                                               var="idEstadoCivilItem"
                                               itemValue="#{idEstadoCivilItem}"
                                               itemLabel="#{idEstadoCivilItem.nombre}"/>
                            <p:ajax update="mrestc, restc"/>
                        </p:selectOneMenu>                                                 
                    </p:column>
                    <p:column styleClass="tdlavel"><h:outputText value="Procedencía:*"/></p:column>
                    <p:column>
                        <p:selectOneMenu value="#{candidatoregistroMB.persona.esExtranjero}" id="rproc" 
                                         required="true" requiredMessage="Procedencía Obligatoria">
                                <f:selectItem itemLabel="Seleccione Prosedencia"/>
                                <f:selectItem itemValue="No" itemLabel="No soy extrangero"/>
                                <f:selectItem itemValue="Si" itemLabel="Soy extrangero"/>
                                <p:ajax update="mrproc, rproc"/>
                        </p:selectOneMenu>                        
                    </p:column>                     
                </p:row> 
                <p:row>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mrestc" for="restc"/></p:column>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mrproc" for="rproc"/></p:column>                    
                </p:row>                 
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Dirección:*"/></p:column>
                    <p:column colspan="3">
                        <p:inputTextarea id="nrdirec" rows="3" cols="50" value="#{candidatoregistroMB.direccion.referencia}" 
                                         required="true" requiredMessage="Dirección Obligatoria">
                            <p:ajax event="blur" update="mnrdirec, nrdirec"/>
                        </p:inputTextarea>                                               
                    </p:column>
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnrdirec" for="nrdirec"/></p:column>
                </p:row>
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Telefono:*" /> </p:column>
                    <p:column>
                        <p:inputMask mask="9999-9999" id="rtelefono" value="#{candidatoregistroMB.telefono}" required="true" requiredMessage="Telefono Obligatorios">
                            <p:ajax event="blur" update="mrtelefono,rtelefono"/>                            
                        </p:inputMask>                         
                    </p:column>                    
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje" colspan="3"><h:message id="mrtelefono" for="rtelefono"/></p:column>                    
                </p:row>                
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Email:*"/></p:column>
                    <p:column colspan="3">
                        <p:inputTextarea id="nremail" rows="1" cols="50" value="#{candidatoregistroMB.email}" 
                                         required="true" requiredMessage="Email Obligatorio" validatorMessage="Formato de Email Incorrecto">
                            <f:validateRegex pattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]" />
                            <p:ajax event="blur" update="mnremail, nremail"/>
                        </p:inputTextarea>                                               
                    </p:column>
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3" styleClass="tdmensaje"><h:message id="mnremail" for="nremail" /></p:column>                    
                </p:row>  
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Facebook:"/></p:column>
                    <p:column colspan="3">
                        <p:inputTextarea id="nrface" rows="1" cols="50" value="#{candidatoregistroMB.face}">
                        </p:inputTextarea>                                               
                    </p:column>
                </p:row>
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Twiter:"/></p:column>
                    <p:column colspan="3">
                        <p:inputTextarea id="nrtwiter" rows="1" cols="50" value="#{candidatoregistroMB.twitter}">                            
                        </p:inputTextarea>                                               
                    </p:column>
                </p:row>              
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Departamento:*"/></p:column>
                    <p:column>
                        <p:selectOneMenu id="nrdepto" value="#{candidatoregistroMB.departamento}" required="true" 
                                         requiredMessage="Departamento Obligatorio" converter="departamentoConverter">
                            <f:selectItem itemLabel="Elija un Departamento"/>
                            <f:selectItems value="#{departamentoController.getlDepartamento()}"
                                               var="idDepartamentoItem"
                                               itemValue="#{idDepartamentoItem}"
                                               itemLabel="#{idDepartamentoItem.nombre}"/>
                            <p:ajax update="nrmuni,mnrdepto,nrdepto"/>
                        </p:selectOneMenu>                       
                    </p:column>
                    <p:column styleClass="tdlavel"><h:outputText value="Municipio*" /></p:column>
                    <p:column>
                        <p:selectOneMenu id="nrmuni" value="#{candidatoregistroMB.direccion.idMunicipio}" required="true" 
                                         requiredMessage="Municipio Obligatorio" converter="municipioConverter">
                            <f:selectItem itemLabel="Elija un Municipio"/>
                            <f:selectItems value="#{municipioController.getlDepartamento(candidatoregistroMB.departamento)}"
                                           var="idMunicipioItem"
                                           itemValue="#{idMunicipioItem}"
                                           itemLabel="#{idMunicipioItem.nombre}"/>                             
                            <p:ajax update="mnrmuni,nrmuni"/>
                        </p:selectOneMenu>                        
                    </p:column>                    
                </p:row> 
                <p:row>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mnrdepto" for="nrdepto"/></p:column>
                    <p:column></p:column>
                    <p:column styleClass="tdmensaje"><h:message id="mnrmuni" for="nrmuni"/></p:column>                    
                </p:row>                                 
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Especialidad:*"/></p:column>
                    <p:column colspan="3">
                        <p:selectOneMenu id="respc" value="#{candidatoregistroMB.persona.idRubro}" required="true" 
                                         requiredMessage="Especialidad Obligatoria" converter="rubroConverter">
                            <f:selectItem itemLabel="Elija una Especialidad"/>
                            <f:selectItems value="#{rubroController.getlrubro()}"
                                           var="idRubroItem"
                                           itemValue="#{idRubroItem}"
                                           itemLabel="#{idRubroItem.nombre}"/>                            
                            <p:ajax update="mrespc,respc"/>
                        </p:selectOneMenu>                                                         
                    </p:column>
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3" styleClass="tdmensaje"><h:message id="mrespc" for="respc"/></p:column>
                </p:row>                 
                <p:row>
                    <p:column styleClass="tdlavel"><h:outputText value="Privacidad de Datos:*"/></p:column>
                    <p:column colspan="3">
                        <p:selectOneMenu id="rpriv" value="#{candidatoregistroMB.persona.privacidad}" required="true" 
                                         requiredMessage="Privacidad Obligatoria">
                                <f:selectItem itemLabel="Seleccione el nivel de Privacidad"/>
                                <f:selectItem itemValue="P" itemLabel="Publico en General"/>
                                <f:selectItem itemValue="R" itemLabel="Solo en solicitudes que aplique"/>
                                <p:ajax update="mrpriv, rpriv"/>
                        </p:selectOneMenu>                                                         
                    </p:column>
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3" styleClass="tdmensaje"><h:message id="mrpriv" for="rpriv"/></p:column>
                </p:row>
                <p:row>
                    <p:column><h:outputText value="Nombre de usuario:*"/></p:column>
                    <p:column><p:inputText id="nlogin" value="#{candidatoregistroMB.usuario.usuario}" 
                                           required="true" requiredMessage="Nombre de Usuario Obligatorio">
                                <p:ajax event="blur" update="mnlogin,nlogin"/>
                              </p:inputText>
                    </p:column> 
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3"><h:message id="mnlogin" for="nlogin"/></p:column>
                </p:row>                
                <p:row>                
                    <p:column><h:outputText value="Clave de Acceso:*"/></p:column>
                    <p:column><p:password  id="npassword" value="#{candidatoregistroMB.usuario.contrasenia}" 
                                           required="true" requiredMessage="Clave de Acceso Obligatoria">
                                <p:ajax event="blur" update="mnpassword"/>
                              </p:password>
                    </p:column>                        
                </p:row>
                <p:row>
                    <p:column></p:column>
                    <p:column colspan="3"><h:message id="mnpassword" for="npassword"/></p:column>
                </p:row>                  
                <p:row>
                    <p:column colspan="4" style="text-align: center">
                            <p:commandButton value="Registrar Candidato" 
                                             icon="ui-icon-disk"
                                             actionListener="#{candidatoregistroMB.RegistrarCandidato()}"
                                             ajax="true"
                                             title="Editar Información"/>                                                                                               
                    </p:column>
                </p:row>                                           
            </p:panelGrid>
        </h:form>   
        </ui:define>
    </ui:composition>
</html>